package com.study.configuration;

import org.springframework.context.annotation.*;
import org.springframework.transaction.annotation.EnableTransactionManagement;

@Configuration//该注解可替换xml配置文件
@ComponentScan(basePackages = "com.study.bean")//属性basePackages用于指定要扫描的包
@PropertySource(value = {"spring.properties", "jdbc.properties"})//指定properties配置文件路径，如果在类路径下需要加上classpath
@Import({JdbcConfiguration.class, TransactionManagerConfiguration.class, TransactionTemplateConfiguration.class})
//相当于spring配置文件中的import标签，在引入其他配置类的时候可以不再写@Configuration，当然写上也没问题
@EnableAspectJAutoProxy //开启AOP自动代理
@EnableTransactionManagement //开启注解事务
public class SpringConfiguration {

    // spring容器初始化时，会调用配置类的无参构造函数
    public SpringConfiguration() {
        System.out.println("容器启动初始化");
    }

}
